팰월드 서버 환경 만들기(구글 클라우드) 1 VM인스턴스 설정
✒️ 2025-05-15 15:15 내용 수정
클라우드로 설정하게 된 계기
- 친구들과 팰월드(palworld, https://www.pocketpair.jp/palworld)를 멀티플레이로 즐기기 위해 서버를 새로 만들었다.
- 싱글플레이 월드에서 다른 사람을 초대하는 방법은 4명까지만 즐길 수 있기에 dedicated server로 서버를 따로 만들었으며, 해당 서버의 관리는 내가 진행했다.
- 개인 컴퓨터에 서버 환경 구축 때 참고한 자료 : 테크팀 팰월드 서버구축하기 : 윈도우 + SteamClient
- 하지만 종종 내가 서버를 실행하지 못할 때나, 내 컴퓨터에서 메모리가 큰 게임을 돌릴 때 팰월드 서버를 동시에 가동하지 못하는 점이 발목을 잡아 아마존 AWS나 구글 클라우드를 사용한 호스팅 방법을 찾아보게 되었다.
- 구글 클라우드로 서버를 설정하는 방법은 아래 링크 영상을 보고 진행하였다. 이 방법으로 서버를 만들면 끊김 없이 24시간 돌아갈 수 있는 서버를 만들 수 있다.
- 구글 클라우드에선 신규 고객에게 제공하는 무료 $300 크레딧이 있다. 이를 이용해서 약 한 달간 사용할 24시간 서버를 만들 수 있다.
VM 인스턴스 생성
- 구글 클라우드 페이지에 접속한다.
- "무료로 시작하기" 버튼을 눌러 결제 등의 정보를 입력하여 진행한다.
- 정보 입력 시 신용카드, 전화번호 인증 절차가 있다.
- 등록 완료 후엔 상단 탭에 있는 제품 - 컴퓨팅 - Compute Engine을 선택한다.
- "콘솔에서 사용해 보기" 버튼을 눌러 콘솔 페이지로 이동한다.
- 좌측 목록에서 "VM 인스턴스"를 선택하고, 인스턴스 만들기 버튼을 누른다.
- 처음으로 Compute Engine 항목에 들어가면 Compute Engine API를 사용하고 있지 않아 사용 체크를 해야 한다.
- 시간이 약간 소요되지만 설정이 완료되면 바로 서비스를 이용할 수 있다.
- 이제 인스턴스의 이름과 리전 및 영역을 설정한다.
- 이름 : VM 인스턴스 이름으로, 원하는 대로 작성한다.
- 리전 : 서버의 위치로, 한국에서 빠르게 접속할 수 있도록 asia-northeast3 (서울) 로 선택한다.
- 영역 : 기본값인 asia-northeast-a로 선택한다. a,b,c 중 어느 것을 고르던지 상관없다.
- VM 머신의 구성을 설정한다.
- 영상의 내용을 참고하여 정리했다.
- N2, N2D(AMD) : 5~10명 정도의 인원이 사용할 때 적당하다.
- C2 : 컴퓨팅 최적화 탭에 있으며 CPU 성능이 좋으나 월별 예상 가격이 높다.
- 머신 유형을 설정하며, 코어와 메모리를 설정할 수 있다.
- 게임사의 서버 권장 스펙인 4 코어 32GB로 설정하였다.
- 참고로 32GB로 설정할 경우 월별 예상 가격이 올라간다.
- 원한다면 커스텀 항목에서 직접 CPU 코어와 메모리를 설정할 수 있다.
- 게임사의 서버 권장 스펙인 4 코어 32GB로 설정하였다.
- 게임사에서 권장하는 설정은 아래와 같다. 메모리는 최소 사양으로 16GB이고, 권장은 32GB 이상인데, 16GB로 설정했던 사람의 후기로는 건축물이 많거나 할 때 렉이 좀 걸린다고 했기에 32GB로 설정했다.
- 아래 부팅 디스크 항목에서 변경 버튼을 눌러 수정한다.
- 운영체제 : Ubuntu로 선택한다.
- 버전 : 머신 구성에서 N2D를 선택했다면 Ubuntu 22.04 LTS x86/64, amd64 jammy built on 2024-09-04로 선택한다.
- 부팅 디스크 유형 : 기본값인 균형 있는 영구 디스크를 선택한다. SSD가 필요하다면 항목에 있는 SSD를 선택해도 되지만 월별 예상 가격이 조금 올라간다.
- 크기 : 영상에선 게임의 얼리엑세스 이후 추가되는 용량 등을 고려하여 여유있게
15GB50GB로 설정하였다.- 20241020 내용 추가 : 약 한 달 반 동안 사용한 후기로는 부팅 디스크의 용량이 너무 작을 경우, GCP나 터미널을 통한 SSH 연결 시도 시 SSH public key를 VM 디스크에 저장할 공간이 부족해 VM에 접속하지 못하는 문제가 발생한다.
1. 부팅 디스크 용량 관련 문제
- 부팅 디스크 용량이 너무 작으면 SSH 연결이 불가능하다.
2. 해결방법
(1) 초기 설정을 진행하는 경우
- VM 생성 시 부팅 디스크 용량을 넉넉하게 설정한다.(30GB 이상 추천)
(2) 초기 설정에서 부팅 디스크의 용량을 너무 작게 설정하고 생성했을 경우
- GCP에서 Storage(저장소) - Disk 항목에 들어가 새 디스크를 생성하고,
이를 사용하는 VM에 연결한 뒤 VM에서 [[하드디스크 추가#2. 파티션 생성]]부터 설정을 진행하여
서버 데이터만 따로 관리할 디스크를 연결한다.
(3) 이미 서버 데이터때문에 부팅 디스크가 꽉 찼을 경우
- 새로운 VM 인스턴스를 생성하고, 부팅 디스크 용량을 크게 잡아준다.
- Storage(저장소) - Disk에서 기존에 사용하던 VM 인스턴스의 디스크를 복사한다.
- 새 VM 인스턴스에 복사한 디스크를 연결한다.
- 새 VM 인스턴스에 SSH 연결을 진행한 후 [[하드디스크 추가#4. 마운트하여 사용하기]]부터 진행하여 디스크를 장치에 연결한다.
- 연결이 완료되면 서버 데이터를 저장할 별도 디스크나 용량이 넉넉해진 새 디스크로 옮긴다.
(옮긴 후 복사본 디스크는 연결을 해제해도 된다)
- 하드디스크 추가 참고.
- 위의 설정에서 균형 있는 영구 디스크는 월별 가격이 $255.42, SSD는 $256.79이므로 약간 올라가는걸 감안할 수 있다면 SSD를 선택해도 될 것 같다.
- 위 설정을 모두 마쳤을 때 월별 예상 가격이 $256.79가 나와 무료 체험판 크레딧인 $300로는 한 달만 사용할 수 있다. 만들기 버튼을 눌러 VM 인스턴스를 생성한다.
- 인스턴스가 생성 중이면 상태가 진행 중 표시로 뜨며, 생성 완료되면 체크 표시가 뜬다.
- 외부 IP는 해당 인스턴스의 공용 IP로, 앞으로 서버에 접속할 때 사용할 IP다.
네트워크 설정
- 좌측의 더보기 버튼을 누르고 VPC(Virtual Private Cloud) 네트워크 - VPC 네트워크를 선택한다.
- 이름에 default라고 되어있는 네트워크를 클릭해 설정 화면으로 이동한다.
- 방화벽 메뉴를 선택해 방화벽 규칙 추가를 누른다.
- 방화벽 이름을 설정하는데, 어떤 목적으로 방화벽을 설정할 것인지 명확하게 구분할 수 있도록 작성한다.
- 팰월드 서버 목적으로 방화벽을 설정하기에 palworld라고 작성했다.
- 아래로 내려서 "대상" 부분을 클릭해 네트워크의 모든 인스턴스를 선택한다.
- 현재 내가 보유한 모든 네트워크에 이 방화벽 규칙을 적용한다.
- 소스 IPv4 범위에 일단 모든 소스를 받기 위해서
0.0.0.0/0으로 설정한다.- 20240915 추가 :
0.0.0.0/0으로 작성해야 모든 IP 허용이 된다.- 사진에선
0.0.0.0으로 잘못 작성해서 어떤 클라이언트로 접속하던 접근이 안 되었다.
- 사진에선
- 다만 화이트리스트가 따로 없고 비밀번호를 사용하는 팰월드 서버 상 이런 방법으로 아예 특정 IP에서만 접근하도록 설정하는 것도 괜찮은 것 같다.
- 20240915 추가 :
- 프로토콜 및 포트 설정에서 TCP, UDP를 체크하고, 아래 포트들을 추가한 후 만들기를 눌러 방화벽 설정을 완료한다.
- TCP :
27015,27016,25575 - UDP :
27015,27016,25575,8211
- TCP :
- 방화벽 규칙에 방금 설정한 규칙이 적용된 것을 확인할 수 있다.